package com.lhs.aopcache;

import com.lhs.aopcache.config.AopCaches;
import com.lhs.aopcache.config.CacheAction;

import java.lang.reflect.Method;
import java.util.List;

/**
 * aop缓存配置管理对象
 */
public interface AopCacheConfigManager {

    String XSTEAM_PACKAGE_NAME = "aopcache";

    void addAopCaches(AopCaches aopCaches);

    void removeAopCaches(AopCaches aopCaches);

    /**
     * 根据方法获取其关联的缓存aop操作配置
     *
     * @param method
     * @return
     */
    List<CacheAction> getActionsWithMethod(Method method);
}
